ap; gap: 12px; } .header-left { flex: 1; min-width: 0; } .header h1 { font-family: 'Orbitron', sans-serif; font-weight: 700; font-size: 1.5rem; letter-spacing: 0.15em; margin: 0 0 6px; color: var(--text-bright); text-shadow: 0 0 20px rgba(0, 255, 242, 0.4); } [data-theme="light"] .header h1 { text-shadow: none; } .header .sub { font-size: 11px; color: var(--glow-cyan); letter-spacing: 0.2em; opacity: 0.9; } .theme-toggle { flex-shrink: 0; display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; background: var(--bg-panel); border: 1px solid var(--border); color: var(--glow-cyan); font-family: inherit; font-size: 12px; letter-spacing: 0.08em; cursor: pointer; transition: box-shadow .2s, border-color .2s; } .theme-toggle:hover { box-shadow: 0 0 14px rgba(0, 255, 242, 0.25); } [data-theme="light"] .theme-toggle:hover { box-shadow: 0 2px 12px rgba(0, 136, 204, 0.2); } .theme-toggle .icon { font-size: 14px; } .meta { font-size: 11px; color: var(--text-dim); margin-bottom: 20px; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; } .meta a { color: var(--glow-cyan); text-decoration: none; } .meta a:hover { text-shadow: 0 0 8px var(--glow-cyan); } [data-theme="light"] .meta a:hover { text-shadow: none; opacity: 0.85; } .meta .dot { color: var(--glow-magenta); } .filters { margin-bottom: 20px; display: flex; align-items: center; gap: 10px; } .filters label { font-size: 11px; color: var(--text-dim); letter-spacing: 0.1em; } .filters select { padding: 8px 12px; background: var(--bg-panel); border: 1px solid var(--border); color: var(--glow-cyan); font-family: inherit; font-size: 12px; cursor: pointer; outline: none; } .filters select:hover, .filters select:focus { box-shadow: 0 0 12px rgba(0, 255, 242, 0.2); } [data-theme="light"] .filters select { color: #0066a0; } [data-theme="light"] .filters select:hover, [data-theme="light"] .filters select:focus { box-shadow: 0 2px 10px rgba(0, 136, 204, 0.15); } .filter-wrap { position: relative; } .filter-trigger { display: none; width: 100%; min-height: 48px; padding: 12px 44px 12px 16px; font-size: 16px; text-align: left; background: var(--bg-panel); border: 1px solid var(--border); color: var(--glow-cyan); font-family: inherit; cursor: pointer; border-radius: 0; } .filter-trigger::after { content: ''; position: absolute; right: 14px; top: 50%; margin-top: -4px; border: 6px solid transparent; border-top-color: var(--glow-cyan); } .filter-overlay { display: none; position: fixed; inset: 0; z-index: 100; background: rgba(0, 0, 0, 0.5); -webkit-tap-highlight-color: transparent; } .filter-overlay.is-open { display: block; } .filter-panel { position: absolute; left: 0; right: 0; bottom: 0; max-height: 70vh; overflow: auto; -webkit-overflow-scrolling: touch; background: var(--bg-panel); b